

package com.hazelcast.internal.management.operation;

import com.hazelcast.internal.dynamicconfig.ConfigurationService;

import java.util.UUID;

abstract class AbstractDynamicConfigOperation extends AbstractManagementOperation {

    protected UUID uuid;

    @Override
    public final void run() throws Exception {
        uuid = startUpdateProcess();
    }

    @Override
    public final Object getResponse() {
        return uuid;
    }

    protected abstract UUID startUpdateProcess();

    @Override
    public final String getServiceName() {
        return ConfigurationService.SERVICE_NAME;
    }

    @Override
    public final boolean returnsResponse() {
        return true;
    }
}
